package main

import (
    "flag"
    "fmt"
    "os"
)

func main() {
    // 定义命令行选项
    objectp := flag.String("o", "nul", "object")
    contentp := flag.String("c", "nul", "content")

    // 解析参数
    flag.Parse()

    object := *objectp
    content := *contentp
    // 打开文件（追加模式，不存在则创建）
    file, err := os.OpenFile(object, os.O_APPEND|os.O_WRONLY|os.O_CREATE, 0644)
    if err != nil {
        fmt.Println("open failed:", err)
        os.Exit(1)
    }
    defer file.Close()

    // 写入内容
    _, err = file.WriteString(content+"\n") // 也可用 Write([]byte(content))
    if err != nil {
        fmt.Println("append failed:", err)
        os.Exit(1)
    }
    fmt.Println("successfully")

    //fmt.Printf("姓名: %s, 年龄: %d\n", *name, *age)
    // 解析剩余的非选项参数（类似 C++ 中 optind 之后的参数）
    //fmt.Println("其他参数:", flag.Args())
}